FIG. 1a and FIG. 1b are schematic block diagrams of communication systems comprising a host terminal 2 and a modem 4. The host terminal 2 may be a user terminal, and may for example take the form of a desktop computer, laptop computer, tablet style computer, or mobile phone (which may be referred to as a “smart phone”). As shown in FIG. 1a, the modem 4 may for example take the form of a dongle for plugging into the host terminal 2 such that the modem 4 is connected to a host processor 30 (otherwise referred to as an application processor) of the host terminal 2. Alternatively the modem 4 may take the form of a mobile phone handset which, as well as being a conventional mobile telephone, can be connected to the host terminal 2 so as to act as an external cellular modem for the host terminal 2. As shown in FIG. 1a, the modem 4 may be external to the host terminal 2 in that it is a separate unit housed in a separate casing, but which is connected or connectable to the host processor 30 of the host terminal 2 by means of a wired or wireless connection (as well as being removable or being able to be disconnected from the host terminal 2). In another alternative set up, as shown in FIG. 1b, the modem 4 may be internal to the host terminal 2, e.g. taking the form of a wireless module in the host terminal 2. For example, both the modem 4 and host processor 30 may be housed within the same casing of the host terminal 2. For example the modem 4 may be internal to a mobile phone 2, and connected to the host processor 30 of the mobile phone 2 by way of a wired connection.
The system also comprises a network 6 such as a mobile cellular network 6 (3GPP network or other CDMA network). Elements of the network 6 are well known to those skilled in the art and are not discussed herein.
For connecting to the mobile cellular network 6, the modem 4 comprises a first interface.
With reference to the communication system shown in FIG. 1a, the first interface may comprise a wireless transceiver, typically in the form of a radio frequency (RF) transceiver and an antenna 5. The first interface of the modem 4 connects via an antenna (not shown) of the mobile cellular network 6 enabling the modem 4 to establish a channel between itself and the mobile cellular network 6.
With reference to the communication system shown in FIG. 1b, the first interface may comprise a wired connection to an interface on the host terminal. The interface on the host terminal may comprise a wireless transceiver, typically in the form of a radio frequency (RF) transceiver and an antenna 5. The interface on the host terminal 2 connects via an antenna (not shown) of the mobile cellular network 6 enabling the modem 4 to establish a channel between itself and the mobile cellular network 6.
This channel referred to above may be referred to as a “context”. For example, if the mobile cellular network is a 3GPP network, then the connection between the modem 4 and a 3GPP network 6 may be called a PDP (Packet Data Protocol) context in 2G or 3G terminology, and an EPS (Evolved Packet System) bearer context in LTE (Long Term Evolution standards) terminology. The physical medium of the connection is typically a radio channel such as a 2G, 3G or LTE radio channel and the protocol that drives it may comprise a set of protocol layers as defined for example by 3GPP. The mobile cellular network 6 may be coupled to a further, packet-based network, preferably a wide area internetwork such as the Internet, by way of one or more gateway routers.
For connecting to the host processor 30 on the host terminal 2, the modem 4 comprises a second interface.
With reference to the communication system shown in FIG. 1a, the second interface, between the host processor 30 and modem 4, could for example comprise a wired connection such as USB, or a short-range wireless transceiver such as an infrared connection or a radio frequency connection (e.g. Bluetooth).
With reference to the communication system shown in FIG. 1b, the second interface, between the host processor 30 and modem 4, could for example comprise a wired connection within the host terminal 2.
FIG. 2 illustrates a known architecture for a user equipment (host terminal 2 and modem 4) to conduct a live voice and/or video call with one or more further terminals using a packet-based protocol such as internet protocol (IP). This type of communication is sometimes referred to as “voice over IP” (VoIP) or “video over IP”.
The host terminal 2 comprises a host processor 30 and, operatively coupled to the processor 30, is a non-transitory computer-readable storage medium (not shown) such as a magnetic or electronic memory storing one or more application programs. The application programs comprise code arranged to be executed on the host processor 30. The application programs include a phone dialer program 202 comprising code which when executed on the host processor enable the host processor 30 to establish a call to at least one further terminal connected to the network 6. The application programs may also include other programs for example a browser program, email program, instant message program and file transfer program, shown collectively as block 206 in FIG. 2.
The host processor 30 also comprises an audio interface 214 connected to a speaker 216 for outputting audio data and a microphone 218 for receiving audio data. The audio interface 214 may comprise a wired or wireless connection to the speaker 216/microphone 218 as is well known in the art.
Once a call has been established by the phone dialer program 202, input voice data received by microphone 218 is transmitted, via the audio interface 214, to a voice codec 212 arranged to encode the input voice data into encoded audio data according to a suitable speech codec.
The host processor 30 processes the encoded audio data for communication to the network 6 according to Internet protocols.
A SIP/SDP stack 204 allows for SIP signalled communications to and from the network 6. SIP is an open signalling protocol for establishing many kinds of real-time communication sessions. Examples of the types of communication sessions that may be established using SIP include voice, video, and/or instant messaging.
Two protocols that are often used in conjunction with SIP are the Real Time Protocol (RTP) and the Session Description Protocol (SDP). The RTP protocol is used to carry the real-time multimedia data. SDP is used to describe and encode capabilities of session participants. Such a description is then used to negotiate the characteristics of the session so that all the devices can participate (that includes, for example, negotiation of codecs used to encode media so all the participants will be able to decode it, and negotiation of the transport protocol used).
In terms of the known TCP/IP protocol suite, SIP is an application layer protocol. Generally, there are two protocols available at the transport layer these are TCP (Transmission Control Protocol) and UDP (User Datagram Protocol). These protocols are represented by the UDP/TCP/IP stack 208. For call establishment TCP is commonly used, thus the SIP/SDP/TCP/IP protocols are configured to process data received from the phone dialer program 202 for communication to and from the network 6 according to Internet protocols to establish a call to at least one further terminal connected to the network 6.
Once the call is established, the host processor performs encapsulation of the encoded audio data. For example, the encoded audio data may be placed in packets according to the RTP standard represented by block 210. RTP is an application layer protocol in terms of the known TCP/IP protocol suite and data packets created at the application layer are known as messages. The application layer messages are encapsulated at the transport layer. For VOIP communications, UDP is commonly used. When UDP is used at the transport layer a data packet is known as a UDP datagram. The Internet Protocol (IP) at the Internet layer encapsulates the UDP datagram to form an IP datagram (otherwise referred to as an IP packet). Processing of the encoded audio data at the transport and internet layers is represented by block 208. All IP data (including IP voice data) is transmitted over the second interface to the modem 4.
The modem 4 comprises a modem processor 33, the modem processor 33 is arranged to receive the IP data from the host processor 30. The IP data is routed by data routing block 252. The data routing block 252 is responsible for routing of downlink data (received from the network 6) to the host processor 30 on the host terminal 2.
A 3GPP stack 254 is configured to process data for communication to and from a mobile cellular network 6 (3GPP network or other CDMA network), the 3GPP stack 254 comprising a set of protocol layers as defined for example by 3GPP for transferring data across a radio channel such as a 2G, 3G or LTE radio channel via the first interface.
When IP data is received from the network 6 via the first interface the IP data is routed from the modem 4 to the host processor 30. The host processor 30 performs data decapsulation represented by blocks 208 and 210 and the encoded audio data is supplied to voice codec 212. The voice codec 212 is arranged to decode the encoded audio data into decoded audio data, according to a suitable speech codec, for output via the speaker 216.